在稍稍安撫完客訴危機後,拓銷團終於抵達智利聖地牙哥。
這裡的天空清朗,遠處安地斯山脈覆著白雪。
街角攤販正烤著 empanada (餡餅),熱呼呼的餡餅飄散著洋蔥香氣。
「這地方比我想像中熱鬧。」德華一邊咬著餡餅欣賞街景,
一邊看著下午團隊去拜訪當地製造業的客戶清單。
這時,沈如蘭收到一則訊息,一位多年未見的學生 Vicente,邀她去參觀他創立的 NGO。
她想了想,轉頭對阿哲說:
「德華去跑行程吧,你跟我一起去見 Vicente,應該會有你感興趣的東西。」
於是拓銷團分成兩路:
一邊是繼續拓展市場的商務團,另一邊,則是沈如蘭和阿哲,準備走進 NGO 的世界。
Vicente 的 NGO 辦公室不大,卻堆滿了資料夾與發票。桌角壓著孩子畫的感謝卡。
他笑著迎上來,語氣裡帶著一絲疲憊:
「沈,你知道嗎?在智利,捐款不是問題。Teletón (智利一個非常有名的全國募款電視馬拉松活動,主要是為殘障兒童籌款建造復健中心) 年年能破紀錄,消防員也幾乎都是志工,學生們常常走上街頭募款。這裡的人很願意付出,只是…」
他指著桌上的文件:
他嘆了口氣:
「我們還在靠人工和 Excel,這是最讓人崩潰的地方。」
阿哲翻著桌上的收據,眼神裡滿是驚訝:
「哇,這要一張張對照嗎?如果用系統,能不能幫忙自動分類呢?」
Vicente 點點頭,苦笑著說:
「要是有這種工具,我們的財務人員就不用常常熬夜了。」
阿哲立刻拿出手機,展示 Odoo 的 NGO 模組:
「像這樣,每筆捐款都能標記專案,就像銀行帳戶有不同用途,系統會自動把捐款分到對應的『專案帳戶』裡,不會和日常營運費用混在一起。」
「那捐款人能自己查得到嗎?」Vicente 追問。
「可以的。」阿哲點頭,「Portal 功能就像 NGO 的專屬捐款查詢介面,捐款人登入後能看到自己資助的專案,收支明細一清二楚。」
他甚至點開一個範例,螢幕上顯示孩子每天的營養餐支出。Vicente 盯著數字,眼神慢慢變得放鬆:
「這樣的話,我們就能專心做事,而不是困在報表裡了。」
沈如蘭看著這一幕,心裡默默想:
透明度這件事,不只是 NGO,任何一間企業都無法忽視。
同一時間,德華正和拓銷團在另一端的會議室裡,與當地製造業代表激烈討論報價、交期與關稅。
一邊是市場競爭的談判桌,一邊是 NGO 對透明與信任的掙扎,兩條線看似遙遠,卻同樣需要數據與誠信作為支撐。
阿哲收起手機,補了一句:
「剛才只是簡單示範,其實 Odoo 在 NGO 的應用有一整套做法。我幫你整理幾個最重要的功能,你就會知道它怎麼解決問題了。」
專案會計(Analytic Account)
每個捐款自動對應專案,收支清晰不混用。
捐款人透明查詢(Portal)
NGO 專屬介面,捐款人可直接登入查詢,建立信任。
審計友善報表
一鍵輸出專案收支,滿足政府與基金會要求。
阿哲順手在 Vicente 辦公室的白板上畫了兩欄,解釋 NGO 和一般企業的不同:
項目 | SME(中小企業) | NGO(非營利組織) |
---|---|---|
收入來源 | 銷售商品/服務 | 捐款、補助、專案資金 |
成本計算 | 依產品/部門 | 依專案/受益人 |
獲利關注點 | 毛利、淨利 | 資金流向透明度、專案執行率 |
報表重點 | 損益表、資產負債表 | 專案別收支表、捐款追蹤報表 |
關鍵挑戰 | 控制庫存與毛利 | 建立信任、符合審計要求 |
ERP 對應 | Odoo:銷售、庫存、會計模組 | Odoo:Analytic Account、Donation 模組、Portal 報表 |
阿哲又舉了一個實際例子,把數字寫在白板上:
專案編號 專案名稱 收入(捐款) 支出(費用) 餘額
-----------------------------------------------------------
P001 孤兒院營養餐 $25,000 $18,500 $6,500
P002 教育補助 $15,000 $12,000 $3,000
P003 社區醫療 $30,000 $28,500 $1,500
-----------------------------------------------------------
合計 $70,000 $59,000 $11,000
接著,他打開電腦,示範了幾行 Odoo ORM 程式碼,說明如何讓捐款自動分配到對應專案,確保專款專用,不再需要熬夜對帳。
class Donation(models.Model):
_name = 'ngo.donation'
_description = 'NGO Donation'
amount = fields.Float("Donation Amount")
project_id = fields.Many2one('account.analytic.account', string="Project")
donor_id = fields.Many2one('res.partner', string="Donor")
@api.model
def allocate_donation(self, donor, amount, project):
donation = self.create({
'amount': amount,
'project_id': project.id,
'donor_id': donor.id,
})
# 確保捐款專款專用,自動建立會計分錄
self.env['account.move'].create({
'move_type': 'entry',
'line_ids': [
(0, 0, {
'name': f"Donation from {donor.name}",
'debit': amount,
'account_id': project.account_id.id,
}),
(0, 0, {
'name': f"Allocation to {project.name}",
'credit': amount,
'account_id': project.fund_account_id.id,
}),
]
})
return donation
夜幕低垂,聖地牙哥的街燈一盞盞亮起。
Vicente 打開一瓶智利 Casillero del Diablo 紅酒,倒了三杯。
「對我們 NGO 來說,最大的資產不是建築,也不是帳面上的資金,而是 捐款人的信任。」
沈如蘭舉杯回應:
「信任不只是 NGO 的生命線,也是企業能否長遠走下去的基礎。
像營養餐專案呼應 SDGs 第二項『消除飢餓』,教育補助對應 第四項『優質教育』,
醫療專案則是 第三項『健康與福祉』。
未來若有企業尋找合作夥伴,他們會一眼看到你們的影響力。」
Vicente 聽後眼睛一亮,像是看見 NGO 與企業跨界合作的新可能。
在數位時代,Odoo 不僅解決 NGO 的報表痛點,更讓 透明與信任有了落腳的地方。
三人舉杯,紅酒的果香在空氣中散開,為這場「ERP × NGO × SDGs」的對話,種下第一顆種子。
👉夜色漸深,他們告別 Vicente,回到飯店和德華會合。但德華的麻煩,似乎還沒有結束。